$(document).ready(function() {
    var url = location.href;
    var baseURL = url.substring(0, url.indexOf('/', 14));
    var directory = "";
    if (baseURL == 'http://localhost' || baseURL == 'http://3kdigitaldesigns.com') {
        directory = '/evd';
    }
    function constructAlbumInfo(album) {
        var toreturn = '';
        toreturn = '<div id="page">' + '<div id="container_gallery">' + '<a href="#" class="galleryalbumtitle">' + album.gallery_album_name + '</a><br>' + '<span class="gallerydescription">Description</span>' + '<br><br><br>' + '<div id="gallery" class="content_gallery">' + '<div id="controls" class="controls"></div>' + '<div class="slideshow-container_gallery">' + '<div id="loading" class="loader"></div>' + '<div id="slideshow_gallery" class="slideshow_gallery"></div>' + '</div>' + '<div id="caption" class="caption-container_gallery"></div>' + '</div>' + '<div id="thumbs" class="navigation">' + '<ul class="thumbs noscript">';
        for (var i = 0; i < album.photos.length; i++) {
            toreturn += '<li>' + '<a class="thumb" name="leaf" href="timthumb/timthumb.php?src=../themes/images/gallery/' + album.sha1 + '/' + album.photos[i].gallery_album_photo + '&q=100&w=500" title="Title #0">' + '<img src="timthumb/timthumb.php?src=../themes/images/gallery/' + album.sha1 + '/' + album.photos[i].gallery_album_photo + '&q=100&h=75&w=75" alt="Title #0" />' + '</a>' + '<div class="caption">' + '<div class="download">' + '<a href="/themes/images/gallery/' + album.sha1 + '/' + album.photos[i].gallery_album_photo + '">Download Original</a>' + '</div>' + '<div class="image-title">Title #0</div>' + '<div class="image-desc">Description</div>' + '</div>' + '</li>';
        }
        toreturn += '</ul>' + '</div>' + '<div style="clear: both;"></div>' + '</div>' + '</div>';
        return toreturn;
    }
    function loadGalleryAlbumImages() {
        $.facebox('Loading contents');
        var url = baseURL + directory + '/gallery/load-gallery-album-images';
        var albumInfo = [];
        $.ajax({
            type: "POST",
            url: url,
            data: '',
            success: function(data) {
                var albums = jQuery.parseJSON(data); //confirm(albums.length);
                for (i = 0; i < albums.length; i++) {
                    album = albums[i].album_obj;
                    album.sha1 = albums[i].album_sha1;
                    album.photos = albums[i].photos_obj; //constructAlbumInfo(album);
                    albumInfo.push(constructAlbumInfo(album));
                } // Modal for church information
                $('a[rel*=album]').click(function() {
                    $.facebox(albumInfo[this.id - 1]); // We only want these styles applied when javascript is enabled
                    $('div.navigation').css({
                        'width': '300px',
                        'float': 'left'
                    });
                    $('div.content_gallery').css('display', 'block'); // Initially set opacity on thumbs and add
                    // additional styling for hover effect on thumbs
                    var onMouseOutOpacity = 0.67;
                    $('#thumbs ul.thumbs li').opacityrollover({
                        mouseOutOpacity: onMouseOutOpacity,
                        mouseOverOpacity: 1.0,
                        fadeSpeed: 'fast',
                        exemptionSelector: '.selected'
                    }); // Initialize Advanced Galleriffic Gallery
                    var gallery = $('#thumbs').galleriffic({
                        delay: 2500,
                        numThumbs: 15,
                        preloadAhead: 10,
                        enableTopPager: true,
                        enableBottomPager: true,
                        maxPagesToShow: 7,
                        imageContainerSel: '#slideshow_gallery',
                        controlsContainerSel: '#controls',
                        captionContainerSel: '#caption',
                        loadingContainerSel: '#loading',
                        renderSSControls: true,
                        renderNavControls: true,
                        playLinkText: 'Play Slideshow',
                        pauseLinkText: 'Pause Slideshow',
                        prevLinkText: '&lsaquo; Previous Photo',
                        nextLinkText: 'Next Photo &rsaquo;',
                        nextPageLinkText: 'Next &rsaquo;',
                        prevPageLinkText: '&lsaquo; Prev',
                        enableHistory: true,
                        autoStart: false,
                        syncTransitions: true,
                        defaultTransitionDuration: 900,
                        onSlideChange: function(prevIndex, nextIndex) { // 'this' refers to the gallery, which is an extension of $('#thumbs')
                            this.find('ul.thumbs').children().eq(prevIndex).fadeTo('fast', onMouseOutOpacity).end().eq(nextIndex).fadeTo('fast', 1.0);
                        },
                        onPageTransitionOut: function(callback) {
                            this.fadeTo('fast', 0.0, callback);
                        },
                        onPageTransitionIn: function() {
                            this.fadeTo('fast', 1.0);
                        }
                    }); /**** Functions to support integration of galleriffic with the jquery.history plugin ****/
                    // PageLoad function
                    // This function is called when:
                    // 1. after calling $.historyInit();
                    // 2. after calling $.historyLoad();
                    // 3. after pushing "Go Back" button of a browser


                    function pageload(hash) { // alert("pageload: " + hash);
                        // hash doesn't contain the first # character.
                        if (hash) {
                            $.galleriffic.gotoImage(hash);
                        } else {
                            gallery.gotoIndex(0);
                        }
                    } // Initialize history plugin.
                    // The callback is called at once by present location.hash. 
                    $.historyInit(pageload, "advanced.html"); // set onlick event for buttons using the jQuery 1.3 live method
                    $("a[rel='history']").live('click', function(e) {
                        if (e.button != 0) return true;
                        var hash = this.href;
                        hash = hash.replace(/^.*#/, ''); // moves to a new page. 
                        // pageload is called at once. 
                        // hash don't contain "#", "?"
                        $.historyLoad(hash);
                        return false;
                    });
                });
                $(document).trigger('close.facebox');
            }
        });
    }
    loadGalleryAlbumImages();
});
